package com.haierp.service;

import java.util.List;
import java.util.Map;

import com.baomidou.framework.service.ISuperService;
import com.haierp.model.Item;
import com.haierp.util.JsonPageResult;
import com.haierp.util.JsonResult;
import com.haierp.vo.ItemQueryVO;
import com.haierp.vo.ItemSkuQueryVO;

public interface IItemService extends ISuperService<Item> {

	/**
	 * add item 
	 * @param item
	 * @param itemSkuList
	 */
	void addItem(Item item);
	
	
	/**
	 * update item 
	 * @param item
	 * @param itemSkuList
	 */
	void updateItem(Item item);
	
	/**
	 * query item 
	 * @param item
	 * @param itemSkuList
	 */
	Item queryItem(ItemQueryVO itemQueryVO);
	
	/**
	 * 按照条件分页查询商品
	 * @param itemQueryVO
	 * @return
	 */
	JsonPageResult<List<Item>> queryItems(ItemQueryVO itemQueryVO);
	
	/**
	 * 按照条件分页查询商品站点
	 * @param itemQueryVO
	 * @return
	 */
	JsonPageResult<List<Item>> queryItemBuySite(ItemQueryVO itemQueryVO);

	/**
	 * 按照条件查询商品站点
	 * @param itemQueryVO
	 * @return
	 */
	JsonResult<List<Item>> queryItembuySiteNoPaging(ItemQueryVO itemQueryVO);

	/**
	 * 通过ID查询多个商品
	 * @param ids
	 * @return
	 */
	List<Item> queryItems(List<Long> ids);

	/**
	 * 2017-04-04,jc
	 * 返回所有的 Id and ItemCode
	 * @return
	 */
	Map<String, Long> queryAllItemCodeAndIdHashMap();
	
	String insertIntoItemDimension(String sceneStr, String pages, String accessToken);
	
	/**
	 * 分页查询海狐商品
	 * @param itemQueryVO
	 * @return
	 */
	JsonPageResult<List<Item>> queryHaihuItems(ItemQueryVO itemQueryVO);
	
	/**
	 * 根据跟新时间提取海狐商品
	 * @param gmtModify
	 * @return
	 */
	List<Item> queryHaihuByUptime(ItemQueryVO itemQueryVO);
	
	/**
	 * 分页反馈采购状况
	 * @param itemQueryVO
	 * @return
	 */
	JsonPageResult<List<Item>> responsePurchaseDetailToSaler(ItemQueryVO itemQueryVO);

	/**
	 * 修改item采购站点
	 * @param itemQueryVO
	 * @return
	 */
	void updateAllOldBuySiteByitem(ItemSkuQueryVO itemSkuQueryVO);
}
